#ifndef _EDSPHERE_H_
#define _EDSPHERE_H_

#include "EDAABB.h"

class GLUquadric;

class EDSphere
{
private:

	vec3f m_Center;
	float m_fRadius;
	GLUquadric * quad;

public:

	EDSphere(void);

	~EDSphere(void);

	//void Build(std::vector<Triangle> trianglesList);
	//void Translate(vec3f move);

	void Draw(void) const;

	//void DrawTriangles(void) const;
	//bool Intersect(const EDSphere * BV) const;
	//inline const std::vector<Triangle> &GetTriangles(void) const;
	//friend void Split(EDSphere *BV, std::vector<EDSphere *> &kids) {};

public:

	//Accessors and Mutators
	const vec3f& GetCenter(void){ return m_Center; }

	const float GetRadius(void){ return m_fRadius; }

	inline void SetCenter(const vec3f& center) { m_Center = center; }

	inline void SetCenter(const float fX, const float fY, const float fZ) { m_Center = vec3f(fX, fY, fZ); }

	inline void SetRadius(const float fRadius) { m_fRadius = fRadius; }
};

#endif